package com.xiaogao.sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.xiaogao.common.entity.BaseResponse;
import com.xiaogao.common.entity.PageData;
import com.xiaogao.sys.model.SysUser;
import com.xiaogao.sys.request.user.AddParam;
import com.xiaogao.sys.request.user.QueryParam;
import com.xiaogao.sys.request.user.UpdateParam;
import com.xiaogao.sys.response.SysUserResponse;
import com.xiaogao.sys.response.SysUserSelect;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

public interface SysUserService extends IService<SysUser> {
    PageData<SysUserResponse> querySelective(Integer pageNum, Integer pageSize, QueryParam queryParam);

    void add(AddParam addParam);
    
    void update(UpdateParam updateParam);

    void delete(List<Long> ids);

    <T extends BaseResponse> void fillUserInfo(List<T> list);

    String uploadAvatar(MultipartFile multipartFile);

    List<SysUserSelect> select();
}
